package com.mnyc.research.domain;

import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.mnyc.system.domain.SysFileInfo;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.mnyc.common.annotation.Excel;
import com.mnyc.common.core.domain.BaseEntity;

/**
 * 校本教研对象 jy_school_research
 *
 * @author ruoyi
 * @date 2025-08-06
 */
public class JySchoolResearch extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    private Long id;

    /**
     * 教研组Id
     */
    @Excel(name = "教研组Id")
    private String groupId;

    /**
     * 教研组名称
     */
    @Excel(name = "教研组名称")
    private String groupName;

    /**
     * 活动主题
     */
    @Excel(name = "活动主题")
    private String subject;

    /**
     * 活动时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "活动时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date activityTime;

    /**
     * 状态
     */
    @Excel(name = "状态")
    private String state;

    /**
     * 审核状态
     */
    @Excel(name = "审核状态")
    private String auditState;

    /**
     * 审核意见
     */
    @Excel(name = "审核意见")
    private String suditMsg;

    /**
     * 部门Id
     */
    @Excel(name = "部门Id")
    private Long deptId;

    /**
     * 删除标志（0代表存在 2代表删除）
     */
    private String delFlag;
    /**
     * 应道人数
     */
    @Excel(name = "应道人数")
    Integer dueAmount;
    /**
     * 实到人数
     */
    @Excel(name = "实到人数")
    Integer actAmount;
    List<SysFileInfo> contentList;

    List<SysFileInfo> imgList;


    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setGroupId(String groupId) {
        this.groupId = groupId;
    }

    public String getGroupId() {
        return groupId;
    }

    public void setGroupName(String groupName) {
        this.groupName = groupName;
    }

    public String getGroupName() {
        return groupName;
    }

    public void setSubject(String subject) {
        this.subject = subject;
    }

    public String getSubject() {
        return subject;
    }

    public void setActivityTime(Date activityTime) {
        this.activityTime = activityTime;
    }

    public Date getActivityTime() {
        return activityTime;
    }

    public void setState(String state) {
        this.state = state;
    }

    public String getState() {
        return state;
    }

    public void setAuditState(String auditState) {
        this.auditState = auditState;
    }

    public String getAuditState() {
        return auditState;
    }

    public void setSuditMsg(String suditMsg) {
        this.suditMsg = suditMsg;
    }

    public String getSuditMsg() {
        return suditMsg;
    }

    public void setDeptId(Long deptId) {
        this.deptId = deptId;
    }

    public Long getDeptId() {
        return deptId;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public String getDelFlag() {
        return delFlag;
    }

    public Integer getDueAmount() {
        return dueAmount;
    }

    public void setDueAmount(Integer dueAmount) {
        this.dueAmount = dueAmount;
    }

    public Integer getActAmount() {
        return actAmount;
    }

    public void setActAmount(Integer actAmount) {
        this.actAmount = actAmount;
    }

    public List<SysFileInfo> getContentList() {
        return contentList;
    }

    public void setContentList(List<SysFileInfo> contentList) {
        this.contentList = contentList;
    }

    public List<SysFileInfo> getImgList() {
        return imgList;
    }

    public void setImgList(List<SysFileInfo> imgList) {
        this.imgList = imgList;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("groupId", getGroupId())
                .append("groupName", getGroupName())
                .append("subject", getSubject())
                .append("activityTime", getActivityTime())
                .append("state", getState())
                .append("auditState", getAuditState())
                .append("suditMsg", getSuditMsg())
                .append("deptId", getDeptId())
                .append("delFlag", getDelFlag())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("remark", getRemark())
                .toString();
    }
}
